package com.example.web.service;

import com.example.web.entity.InteractionRecord;
import com.example.web.entity.Customer;

import java.util.List;
import java.util.Map;

public interface InteractionRecordService {
    
    /**
     * 根据ID查询互动记录
     */
    InteractionRecord findById(Long id);
    
    /**
     * 分页查询互动记录列表
     */
    Map<String, Object> getInteractionRecordList(Integer page, Integer size, 
                                                String interactionType, 
                                                Long customerId, 
                                                Long creatorId);
    
    /**
     * 创建互动记录
     */
    InteractionRecord createInteractionRecord(InteractionRecord interactionRecord);
    
    /**
     * 更新互动记录
     */
    InteractionRecord updateInteractionRecord(InteractionRecord interactionRecord);
    
    /**
     * 删除互动记录
     */
    boolean deleteInteractionRecord(Long id);
    
    /**
     * 根据客户ID查询互动记录
     */
    List<InteractionRecord> getInteractionRecordsByCustomer(Long customerId);
    
    /**
     * 获取用户的客户列表（用于关联下拉选择）
     */
    List<Customer> getCustomersByCreator(Long creatorId);
    
    /**
     * 获取互动类型选项
     */
    List<Map<String, String>> getInteractionTypeOptions();
}